package leaveSystem.dao.mysql;

import leaveSystem.dao.DAOFactory;
import leaveSystem.dao.EmployeeDAO;
import leaveSystem.dao.EmployeeWorkscheduleDAO;
import leaveSystem.dao.LeaveDAO;
import leaveSystem.dao.LeaveTypeDAO;
import leaveSystem.dao.PublicHolidaysDAO;
import leaveSystem.dao.RoleDAO;
import leaveSystem.dao.Compensation_TrackingDao;

public class DAOFactoryImpl extends DAOFactory{
	
	private EmployeeDAO employeeDAO = new EmployeeDAOImpl();
	private LeaveDAO LeaveDAO = new LeaveDAOImpl();
	private LeaveTypeDAO LeaveTypeDAO = new LeaveTypeDAOImpl();
	private PublicHolidaysDAO PublicHolidaysDAO = new PublicHolidaysDAOImpl();
	private RoleDAO RoleDAO = new RoleDAOImpl();
	private EmployeeWorkscheduleDAO EmployeeWorkscheduleDAO = new EmployeeWorkscheduleDAOImpl();
	private Compensation_TrackingDao Compensation_TrackingDao = new Compensation_TrackingDaoImpl();
	
    public EmployeeDAO getEmployeeDAO() {
        return employeeDAO;
    }
	
	@Override
	public LeaveDAO getLeaveDAO() {
		// TODO Auto-generated method stub
		return LeaveDAO;
	}
	@Override
	public LeaveTypeDAO getLeaveTypeDAO() {
		// TODO Auto-generated method stub
		return LeaveTypeDAO;
	}
	@Override
	public PublicHolidaysDAO getPublicHolidaysDAO() {
		// TODO Auto-generated method stub
		return PublicHolidaysDAO;
	}
	@Override
	public RoleDAO getRoleDAO() {
		// TODO Auto-generated method stub
		return RoleDAO;
	}

	@Override
	public leaveSystem.dao.EmployeeWorkscheduleDAO getEmployeeWorkscheduleDAO() {
		// TODO Auto-generated method stub
		return EmployeeWorkscheduleDAO;
	}
	@Override
	public leaveSystem.dao.Compensation_TrackingDao getCompensation_TrackingDao() {
		// TODO Auto-generated method stub
		return Compensation_TrackingDao;
	}
}
